Generation of explanatory summaries

ABSTRACT

A method for generating sum maries of text is described. The method includes the step of extracting features from text of text lists from summaries. The explanatoriness of the text is then evaluated, wherein evaluating the explanatoriness of text includes evaluating the features of the text, including at least the step of evaluating the discriminativeness of the features of the text by comparing the text to a first text data set, wherein the first text data set is derived from a topic label. The evaluated text is then ranked based on the explanatoriness evaluation.

BACKGROUND

There are a lot of opinionated documents such as blogs, reviews andforum articles on the Web. Because of the huge volume of opinionateddocuments, automatic summarization techniques have been studied. Someprevious opinion summarization techniques focus on predicting sentimentorientation or finding ratings of aspects. For example, to understandopinions about a currently available tablet computer “TabletXYZ”,articles, blogs and reviews from websites can be reviewed. Aspects aboutthe tablet computer, such as “OS (operating system)”, battery, screen,and price can be used to classify the sentiment orientation of theassociated text. Although existing techniques can show the generalopinion distribution (e.g. 70% positive and 30% negative), they may notprovide detailed reasons about those opinions. Thus, reviewing all ofthe classified texts may still be required.

In some cases, automatic summarization techniques can be helpful toreduce the length of the text of the opinionated document. However,because many automatic summarization techniques are based on“popularity” (frequently mentioned information is important), the outputsummary can be a repeat of already known information. For example, forthe summary request for “positive opinion about TabletXYZ OS”, theoutput summary might be “OS is good.” Such an output summary isredundant with the initial summary request and does not provide anyadditional information.

BRIEF DESCRIPTION OF DRAWINGS

The figures depict implementations/embodiments of the invention and notthe invention itself. Some embodiments are described, by way of example,with respect to the following Figures.

FIG. 1 shows a process overview of a method of generating explanatorysummaries from opinionated data according to an example of theinvention;

FIG. 2 shows a flow diagram for a method of generating explanatorysummaries from opinionated data according to an example of theinvention;

FIG. 3 shows a flow diagram for a method of evaluating and ranking inputtext by popularity according to an example of the invention;

FIG. 4 shows a flow diagram for a method of evaluating and ranking inputtext by discourse analysis according to an example of the invention;

FIG. 5A shows a flow diagram for a method of evaluating and rankinginput text based on discriminativeness from background data according toan example of the invention;

FIG. 5B shows a flow diagram for a method of evaluating and rankinginput text based on discriminativeness from comparable data according toan example of the invention;

FIG. 6 shows a system for generating explanatory summaries fromopinionated data according to an example of the invention;

FIG. 7 shows a computer system for implementing the method shown in FIG.2 described in accordance with examples of the present invention.

The drawings referred to in this Brief Description should not beunderstood as being drawn to scale unless specifically noted.

DETAILED DESCRIPTION OF THE EMBODIMENTS

For simplicity and illustrative purposes, the principles of theembodiments are described by referring mainly to examples thereof. Inthe following description, numerous specific details are set forth inorder to provide a thorough understanding of the embodiments. It will beapparent, however, to one of ordinary skill in the art, that theembodiments may be practiced without limitation to these specificdetails. Also, different embodiments may be used together. In someinstances, well known methods and structures have not been described indetail so as not to unnecessarily obscure the description of theembodiments.

Due to the large amount of opinionated data available, opinion miningand summarization techniques have become increasingly important. Manysummarization techniques have focused on predicting sentiments ofentities and aspect-based rating for the entities. Sentiment analysistools give the popularity of opinionated text or polarity distributionbut not always the underlying reasons why these opinions are positive ornegative. Thus, even if sentiment analysis tools are used, the end usermay still need to read through the opinionated text collection to findout why people expressed those opinions.

To solve this problem, we propose an automated explanatory opinionsummarization generation technique which provides more detailedexplanatory summary information to help readers to better understand thereasons behind the sentiments. Thus for example, instead of providingthe output summary “OS is good” in response to the summary request forpositive information about TabletXYZ operating system, more explanatorysummary sentences such as “OS supports multi-tasking well” will beprovided to help the reviewer understand the reasons of the opinions.Thus a goal of the explanatory summary is that it is not only relevantto the given topic label, but it is also not directly inferable(redundant) from the given topic label. The explanatory summarizationmethod selectively finds more informative content using syntactic andlexical analysis and discriminative points from for example, the othersentiment orientation or comparable sub-topics.

FIG. 1 shows a process overview of a method of generating explanatorysummaries from opinionated data according to an example of theinvention. Referring to FIG. 1, input data 110 for this method includes:(1) opinionated text data and (2) topic label 118 from which explanatorysummaries will be generated The opinionated text data can bedeconstructed into a plurality of “sentences” 114 a-n that provide textabout a topic.

For the case where the input data 110 includes opinionated text data,the input is a list of texts which may include opinions about the giventopic. The opinionated text can come from various sources and could befrom sources, including but not limited to: sentences from reviewarticles from the web, opinion data from a retail website or any otheroutput of any opinion mining source. The opinionated text data can beextracted from unstructured or structured text data or a combination ofthe two data types.

The input data 110 includes a topic label from which explanatorysummaries will be generated. A topic label is a set of words whichdescribe the input sentences. Description 118 shows an example of atopic label from which explanatory data will be generated. The topiclabel may include different dimensions like “domain”, “product name”,“sentiment orientation”, or “subtopic/aspect”. For example, if we wantan explanatory summary for summarizing the reasons for the “positive”opinions about the TabletXYZ's operating system, the topic label wouldbe (TabletXYZ, OS, Positive). For the topic label example 118, the topiclabel 118 includes three dimensions (“product name”, “subtopic”,“sentiment orientation”). For the example topic label 118—(TabletXYZ,OS, Positive) is the “topic label”, tablet computers is the “domain”,TabletXYZ is the “product name”, OS is the “aspect” or “sub-topic”, andPositive would be the “sentiment orientation”.

A topic label can be considered to be opinionated when one of thedimensions is a “sentiment orientation”. The example in topic label 118can be referred to as an opinionated topic as it includes the sentimentorientation “Positive”. If we want to provide an explanatory summary forthe reasons for the “negative” opinion about the Tabl etXYZ OS, thetopic label in the input data 110 would be (TabletXYZ, OS, Negative). Ifthe topic is not “opinionated”, then no sentiment orientation isincluded in the topic label. Thus if we wanted an explanatory summaryfor summarizing the reasons (whether positive or negative) about theTabl etXYZ's operating system, the topic label would be (TabletXYZ, OS,Positive).

The method of generating explanatory summarizations can be described asa computational problem where the input is described in one example as(1) a topic T as described by a phrase (e.g. a camera model), (2) anaspect A as described by a phrase (e.g. , “picture quality” for acamera), (3) a polarity of sentiment P (on the specified aspect A of thetopic T), which is either “positive” or “negative” and (4) a set ofopinionated sentences O={o₁, . . . , o_(n)} of the sentiment polarity.For example, if we want to summarize positive opinions about TabletXYZOS, our input would be T=“TabletXYZ”, A=“OS”, P=“positive”, and a set ofsentences with positive opinions about the OS of TabletXYZ, O.

Given T, A, P and O as input, the desired output is an explanatoryopinion summary S, which is a subset of sentences of O, i.e., s={s₁, . .. , s_(m)}c⊂O such that every s_(i) is an explanatory sentence thatgives a specific reason why the reviewer has the particular polarity ofsentiment, and the summary would fit a display with k characters, i.e.,Σ_(i−1) ^(m)|s_(i)|≦k, where |s_(i)| is the length of the sentences_(i). Unlike some summarization methods where the problem formulationis often to extract k sentences, in one example, the method extracts asmany sentences as can fit in a window of k characters.

Before feature extraction, in one example, additional preprocessingsteps may be applied to the input data 110 to eliminate words that arenot useful in determining explanatoriness. In one example, apreprocessing stop word technique is applied to the data 110 toeliminate any stop words. Stop words are words that provide littleinformative content e.g. articles, pronouns, etc. and because they arenot very informative, these words may be eliminated from the input data110. In another example, the preprocessing step includes application ofa stemmer technique to unify different forms of word variations. Forexample, going to the infinitive form of the verb or eliminating pluralforms of the text are both methods of achieving a more unique form ofthe input. Application of a stemmer pre-processing step eliminates wordwhich are effectively duplicates (i.e. like/likes/liked,run/runs/running, etc.) by simplifying to a root word, thus providing alist of text that is more efficient in determining explanatoriness. Inone example, the words eliminated from the input data 110 by thesepre-processing techniques are not used in the ranking evaluations,however, the words that are eliminated in the pre-processing steps, maybe included in the final explanatory summary so that the text appears inthe original form that it was input for purposes of readability.

Sentences and/or text from the list of text 114 a-n in the input 110 isprocessed to extract features. Here the term feature is used similarlyto how it is used in the machine learning context—where a feature issome characteristic. Often the characteristic is associated with atarget and the feature is used in combination with the target to make adecision. Features can be but are not limited to the following textstructures: unigrams (i.e., single words), n-grams (multi-word phrases),sentences. A decision needs to be taken on which text structure or cornbination of text structures is preferred (i.e., gives better results).

Once the input 110 is decomposed into its features, we can evaluate theexplanatoriness of each feature by using several criteria, including butnot limited to the following criteria: whether the feature is known,what ranking the feature has based on its popularity, what ranking thefeature has based on discourse analysis, what ranking the feature hasbased on its discriminativeness from background data, and what rankingthe feature has based on its discriminativeness from comparable data.All of the aforementioned criteria are not required for implementationof the invention, however, adding additional non-overlapping criteriacan improve the quality of the explanatory summaries. In addition, theaforementioned criteria list is not necessarily a complete list ofcriteria for evaluation of explanatoriness and other criteria may beadded or removed from the list dependent upon the desired results.

As previously stated, once the input 110 is decomposed into itsfeatures, we can evaluate the explanatoriness of each feature. Onetechnique for evaluating the explanatoriness of the feature is toevaluate whether the feature is “known”. If the feature or thedimensions in a topic is already known, it is not considered to be veryinformative. For example, for the topic (TabletXYZ, OS, Positive), thewords “TabletXYZ”, “OS” and general positive opinion words (e.g. “good”)are already known. As they are already known for this topic, the words“TabletXYZ”, “OS” and “good” are considered to be not very informativefor this topic, and thus their score with respect to this evaluationcriteria should be very low.

As we do not want to repeat information that is already known for thetopic, we can ignore known information in our scoring processes.Referring to FIG. 1, the process of evaluating whether a feature isknown is represented by 120. When information is known, we may want toremove it from our input list 110. Referring back to our previousexample, where the words “TabletXYZ”, “OS”, and “good” were notconsidered to be informative, we want to remove them from the inputlist. Thus, the sentence s3 (114 c) has the word “good” 122 removed fromit as it is not informative. Similarly, the sentence sn (114 n) has theword “TabletXYZ”124 removed from it as it is not informative. Removal ofthe word is indicated by the letter “x” at the location in the sentencewhere the word was removed. The removed words would not be used inranking evaluation.

As previously stated, once the input 110 is decomposed into itsfeatures, we can evaluate the explanatoriness of the text with respectto discourse analysis or alternatively with respect to each feature withrespect to popularity and discriminativeness. The step of evaluating thetext and/or features includes the step of determining an explanatoryscore and ranking (steps 232, 236, 240, 244) the text and/or featuresbased on the explanatory score.

One of the techniques available for evaluating explanatoriness isdetermining what the ranking of the feature is based on its popularity.Ranking by popularity 120 is one of the components of the process shownin FIG. 1 and is correspondingly shown as one of the steps in the methodshown in FIG. 2. FIG. 2 shows a method of generating explanatorysummaries that corresponds to the overall process shown in FIG. 2.Specifically, the step of ranking the input text by popularity is shownas step 232 in the method 200. Further, the details of the rankingprocess based on text popularity are shown in the flowchart shown inFIG. 3.

FIG. 3 shows a flow diagram for a method of evaluating and ranking inputtext by popularity according to an example of the invention. In oneexample, it is desirable to show representative information from inputtexts, we use popularity of information as one of our signals as to theexplanatoriness of the input text. For example, if the word‘multi-tasking’ frequently occurs in the text listed in the input 110,the word ‘multi-tasking’ will be determined to be more explanatory thanother less frequently occurring words.

FIG. 3 shows a flow diagram for a method of evaluating and ranking inputtext by popularity according to an example of the invention. The flowdiagram in FIG. 3 corresponds to the steps 224, 230 and 232 shown in theoverall process shown in FIG. 2. The process 200 shown in FIG. 2includes the steps of: extracting features from text of text lists fromopinion summaries (224); evaluating explanatoriness of text (step 230),wherein evaluating the explanatoriness of text includes evaluating thefeatures of the text, including at least the step of evaluating thediscriminativeness of the features of the text by comparing the text toa first text data set, wherein the first text data set is derived from atopic label; and ranking the text based on the explanatorinessevaluation (step 252).

The example shown in FIG. 2 shows four different techniques that may beused for evaluating the explanatoriness of the text based on the topiclabel. The four techniques are: popularity, discourse analysis,discriminativeness from background data set, and discriminativeness fromcomparable data set. Although these four data sets are shown, thedescribed method is not limited to these four techniques and othertechniques which evaluate the explanatoriness of text can be added tothe described method or alternatively, a subset of the describedtechniques (for example, popularity and discriminativeness of input textfrom background data) could be used.

In one example, the input text is evaluated for explanatoriness by eachof the four different evaluation techniques. During evaluation by thefour evaluation techniques, the input text is given an score based oneach evaluation (a popularity score (step 350), a discourse analysisscore (step 440), a discriminativeness score based on comparison to adata set (step 550) where the data set the input data set is beingcompared to is a background data set (540 b) or a comparable data set(step 540 e). Based on the evaluation score, the text is ranked (steps232, 236, 240, 244).

Referring to FIG. 3, an input topic label and/or a list of text isgenerated from the input data set 110. From the lists of text in theinput, features are extracted from each topic label or text list (step224). After features are extracted from the list of texts, theexplanatoriness of the text is evaluated (step 230) based on popularity.Referring to the method in FIG. 3, the evaluation step includescalculating a popularity score for each feature (step 340). Then basedon the popularity score of each feature in the text, a popularity scoreis calculated for each text (step 350). Then the texts are rankedaccording to their popularity score (step 232). This popularity score isthen output (step 370). The output is merged with the other rankings(step 252) and is used in determining which features are used in thefinal output (the explanatory summary).

As previously stated, once the input data 110 is decomposed into itsfeatures, we can evaluate the explanatoriness of each feature by usingseveral criteria. In the example shown in FIG. 4, evaluating theexplanatoriness of each feature is based on evaluating the feature basedon the discourse analysis. Ranking based on the discourse analysis ofthe text (step 236) is one of the components of the process shown inFIG. 1. Further details of evaluating and ranking the input text bydiscourse analysis is shown in FIG. 4.

Discourse analysis is the process of parsing text and in the describedmethod, the process of parsing text (typically a sentence) helps todetermine and extract explanatory words. Labels obtained from discourseparsing, give clues to find text with a high likelihood of containingdetailed information. Discourse analysis techniques are used to parseand analyze the syntax structure and lexical clues (e.g. ‘because’) ofthe sentence. Consider for example, the input text sentence “TabletXYZOS is good because it can support multi-tasking well”. Using discourseanalysis techniques, a label may be assigned. For example, if based onthe discourse analysis techniques—it is found that the input textsentence is explanatory, then the label ‘Explanation’ (i.e., reason)could be assigned to text.

The label ‘Explanation” is just one of the labels that may be assignedduring discourse analysis. For example, the result of discourse parsingcan output or assign labels including, but not limited to the followinglist: ‘Elaboration’, ‘Attribution’, ‘Temporal’, ‘Enablement’,‘Condition’, ‘Explanation’, ‘Contrast’, ‘Background’, ‘Joint’,‘Comparison’, ‘Cause’, ‘Manner-Means’, ‘Topic- Comment’, ‘Evaluation’,‘Consequence’, ‘Summary’, ‘Cause-Result’, ‘Analogy’, ‘Span’,‘Same-Unit’, ‘Textual Organization’, ‘Question-Answer-N’, ‘Otherwise’.In one example, labels are selected from a list of labels (such as theprevious list) where the selected labels have a grammatical constructionbelieved to be more likely to be indicative of explanatoriness. In oneexample, the labels indicative of explanatoriness are: ‘Elaboration,‘Explanation’, ‘Background’, ‘Condition’, ‘Cause’, ‘Enablement’,‘Cause-Result’, ‘Consequence’, ‘Comparison’, and ‘Contrast’. Labelsconsidered to be indicative of explanatoriness can be scored higher whenevaluating explanatoriness. Thus, we can selectively use discourselabels which usually contain detailed reasons of opinions for ranking inorder to determine which text is likely to provide text which should beused in the output explanatory summary due to its high ranking based onexplanatoriness.

FIG. 4 shows a flow diagram for a method of evaluating and ranking inputtext by discourse analysis according to an example of the invention. Thedescribed method uses a list of texts and an input topic label (step320) as input. From the list of text, discourse analysis techniques areapplied to the text (step 430). Because the entire original sentence isused for discourse parsing, the steps of extracting features from thetext (step 224) and removing known information (step 228) do not need tobe applied. Based on the application of the discourse analysistechnique—a label can be assigned. Based on the discourse labelassigned, the text corresponding to the discourse label is assigned ascore (step 440).

The process for determining the score for the text associated with thediscourse label (step 440) is detailed in steps 440 a-d. The input forthis process is the discourse labeled text (step 440 a). For eachdiscourse label, a determination is made as to whether the discourselabel is related to a detailed explanation (step 440 b). If thediscourse label assigned to the text is related to a detailedexplanation (440 c), then the discourse score is increased (step 440 d).If the discourse label assigned to the text is not related to a detailedexplanation (440 f), then the discourse score is not increased—it issimply output (step 440 e) with no change to the current score. In oneexample, different scoring values may be assigned to different Labels.For example, if batteries for the Tablet XYZ are having problems andthere is a high concern of fire, text having the label “Consequence”where consequence is fire may receive a higher score than other labelsas it would be considered to be more discriminative.

As previously stated, once the input 110 is decomposed into itsfeatures, we can evaluate the explanatoriness of each feature by usingseveral criteria. Another criteria used for evaluating theexplanatoriness of each feature is determining the discriminativeness ofthe feature. Ranking by discriminativeness 160, 170 corresponds to twocomponents of the process 160, 170 shown in FIG. 1 and iscorrespondingly shown as two steps 240, 244 in the overall process shownin FIG. 2. Specifically, the step of ranking the input text bydiscriminativeness by a comparison of the input to a background data setis show n step 240 in the method 200 and the step of ranking the inputtext by discriminativeness by a comparison of the input to a comparabledata set is shown step 240 in the method 200. Further, the details ofthe ranking process are shown in the flowchart shown in FIGS. 5A and 5Bwhere FIGS. 5A and 5B both show flow diagrams for a method of evaluatingand ranking input text based on discriminativeness according to anexample of the invention.

The described method provides two examples of ranking based ondiscriminativeness. In the first example shown in FIG. 5A,discriminativeness is determined by comparing the input data with abackground data set. In the second example shown in FIG. 5B,discriminativeness is determined by comparing input data with acomparable data set. In both of the examples shown in FIGS. 5A and 5B, acomparison is occurring. The comparison occurs between the data in theinput data set 110 corresponding to the topic label 118 and data in andata set that corresponds to a modified topic label. For example, themodified topic label might be a “relaxed” topic label or a “replacement”topic label where for example a dimension in the original topic labelmay be replaced. If a feature appears in one set and not another set (ormore frequently appear in one set than another set), then the featurewhere the difference occurs can be considered to be more discriminativeand should be ranked more highly.

10

In one example, the input data set is a topic label. Background data setcan be obtained by topic relaxation. If there is more than one dimensionin the topic label, we can “relax” the condition on one of thedimensions for example. In one example, relaxing a topic label isachieved by eliminating a dimension from the topic label. For the topiclabel (TabletXYZ, OS, Positive), an example of a relaxed topic labelwould be (TabletXYZ, OS). For the relaxed topic label (TabletXYZ, OS)the condition ‘Positive’ of the sentiment orientation dimension isrelaxed. Another example of a relaxed topic label would be (OS,Positive). For the relaxed topic label (OS, Positive) the condition‘TabletXYZ’ on the product dimension is relaxed compared to the originaltopic label (TabletXYZ, OS, Positive). Another example of a relaxedtopic label would be (TabletXYZ, Positive) where the condition ‘OS’ onthe aspect dimension was relaxed.

For each dimension, we can even further relax the topic label. Forexample, (TabletXYZ) could be relaxed to ‘Tablet’ topic. For productentries, we can find product hierarchies in many review websites.However, the problem associated with relaxing the topic label further isthat it increases the breadth of input that matches the topic label,increasing the difficulty of providing informative data.

By comparing background data with the input data set 110, we canevaluate discriminativeness of the information in the data set. Forexample, if our topic label is (TabletXYZ, OS, Positive), generalinformation about TabletXYZ, OS, (TabletXYZ, OS) can be one of thebackground data set. If some text occurs frequently in the (TabletXYZ,OS, Positive) text set, but not in (TabletXYZ, OS), we can consider thatit contains information that is discriminative. In one example, we wouldhave opinionated sentences about one topic, T, and aspects andsentiments can be classified by the existing opinion mining techniques.That is, we would always have background at least within topic T.

FIGS. 5A and 5B show flow diagrams for a method of evaluating andranking input text by determining discriminativeness according to anexample of the invention. The flow diagrams in FIGS. 5A and 5Bcorresponds to steps 224, 230, 240 and 244 shown in the overall processshown in FIG. 2. The described method uses as input a list of texts andan input topic label (step 320) as input 110. From the lists of text inthe input, features are extracted from each topic label or text list(step 224). Discriminativeness analysis techniques are applied to thefeatures to calculate the discriminativeness of each feature (step 540).

The process for determining the discriminativeness of each feature inthe text (step 540) is detailed in steps 540 a-g. The input for thisprocess are the features in the text (step 540 a). Referring to FIG. 5A,for each feature, a determination is made as to whether the feature ismore frequent in the current input text than the background “relaxed”data set (step 540 b). If the feature is more frequent in the currentinput (540 c), then the discriminativeness score for that feature isincreased (step 540 d).

As previously stated, the described method provides two examples ofranking based on discriminativeness. In the first example shown in FIG.5A, the discriminativeness is determined by comparing input data to abackground data set. In the second example shown in FIG. 5B,discriminativeness is determined by comparing input data with acomparable data set. In one example, the input data set is a topiclabel. By comparing comparable data to the input data set, we canevaluate discriminativeness of the information.

By comparing data in a comparable data set to the input data set, we canevaluate discriminativeness of the information. Comparable data sets canbe found by topic replacement. If there is more than one dimension inthe topic label, replacing one of the dimensions with a dimension willresult in a comparable data set. For example, if our topic label is(TabletXYZ, OS, Positive), we can compare it to the comparable data settopic label (TabletXYZ, OS, Negative). The basic method of comparison tobackground data is similar to the method of comparison to comparabledata for finding discriminativeness from background data. If anyinformation frequently occurs in (TabletXYZ, OS, Positive) text set, butnot in (TabletXYZ, OS, Negative), that information is considered to bediscriminative.

Examples of comparable data are discussed. For example, if the topiclabel includes sentiment orientation, replacing it with the oppositesentiment determines a comparable data set (in this case, those withnegative semantic orientation about TabletXYZ, OS). If the topic labelincludes an aspect (e.g. OS) specification, other aspects (e.g. Design,Battery, Price) of the same entity (i.e., TabletXYZ) can be comparabletopics. For product name (e.g. TabletXYZ), other products in the samedomain (e.g. TabletABC in tablet domain) would be comparable topics.

By comparing the input data set with background data sets and comparabledata sets, it is possible to identify more discriminative informationabout the given topic for the explanatory summary. Another benefit ofusing the discriminativeness signal is that we can exclude opinions thatare irrelevant for the topic label. There may be texts in input textsthat include some irrelevant information about the topic label. Forexample the text ‘TabletXYZ has long battery, cool design, but highprice’ could be included in the (TabletXYZ, Battery, Positive) text setif we use ‘sentence’ as a unit even though the input text includesinformation about design and price. In this case, the described methodcan determine that the information about design and price is notinformative because it would be less discriminative when we compare thecomparable data sets, (TabletXYZ, Design, Positive) and (TabletXYZ,Price, Positive).

Comparable data sets can be found by topic replacement. If there is morethan one dimension in the topic label, we can replace one of theconditions. For example, if the topic label includes sentimentorientation, replacing it with the opposite sentiment determines acomparable data set (in this case, those with negative semanticorientation about TabletXYZ OS). If the topic label includes an aspect(e.g. OS) specification, other aspects (e.g. Design, Battery, Price) ofthe same entity (i.e., TabletXYZ) can be comparable topics. For productname (e.g. TabletXYZ), other products in the same domain (e.g. TabletXYZin tablet domain) would be comparable topics.

The flow diagram in FIG. 5B corresponds to the steps 224, 230, 240, 244shown in the overall process shown in FIG. 2. The described method usesas input a list of texts and a topic label (step 320) as input 110. Fromthe lists of text in the input, features are extracted from each topiclabel or text list (step 530). Discriminativeness analysis techniquesare applied to the features to calculate the discriminativeness of eachfeature (step 224).

The process for determining the discriminativeness of each feature inthe text (step 540) is detailed in steps 540 a-g. The input for thisprocess are the features in the text (step 540 a). For each feature, adetermination is made as to whether the feature is more frequent in thecurrent input text than the comparable data set (step 540 e). If thefeature is more frequent in the current input data set (540 c), then thediscriminativeness score for that feature is increased (step 540 d).Otherwise, the discriminativeness score is just output (step 540 g)without any modification.

As previously stated, criteria other than popularity 140, discourseanalysis 150, discriminativeness from background data 160, anddiscriminativeness from comparable data 170, may be used in evaluatingthe explanatoriness. For example, the length of the text (not shown) maybe used as an indicator of the explanatoriness as longer sentences tendto include an explanation. For this example, another criteria labeled‘Rank input text by length’ would be added to the process flow similarto the criteria 232, 236, 240, and 244. In one example, the longer thelength of the sentence, the higher the score and thus the higher theranking of the text. In one example, other criteria may reflect lengthfeature so adding length criterion can be an optional. Whether length isadded as an additional criterion may depend on how the other criteria iscalculated. For example, if we define popularity of sentence=sum of eachfeature's popularity, then for this case, if a sentence having a longerlength and more features tend to have higher popularity.

After the list of texts is evaluated and given an explanatoriness scorefor its explanatoriness using different criteria such as popularity 140,discourse analysis 150, discriminativeness from background data 160, anddiscriminativeness from comparable data 170, the list of texts areranked (steps 232, 236, 240, 244) based on the explanatoriness score.The ranked list of texts is merged (step 252), in one example into asingle list. In one example, the lists of texts are merged by uniformlyranking the lists of texts. In an alternative example, the ranked textscan given different weights. The letters w1, w2, w3, and w4 arerepresentative of the different weights that could be assigned to thedifferent criteria. For the case where the criteria are uniformly rankedw1=w2=w3=w4.

Texts are selected from the higher ranking texts up to the desiredlength. In one example, a top k method is method is used. An explanatorysummary can be generated by taking a maximum number of the mostexplanatory opinion (most highly ranked) to fill in the summaryconstrained by the specified summary length. Given an explanatoryscoring function E(s), which can score a sentences based on how well thesentence explains the sentiment polarity of opinions, an explanatorysummary can be generated by computing the explanatoriness scores of allthe sentences in O, i.e., E(o₁), E(o₂), . . . , E(o_(n),), ranking allthe sentences in O in descending order based on E(o_(i)) and then whereS={ }, repeatedly adding sentences from L to S in the ranked order untilno additional sentence can be added to S without violating theconstraint Σ_(s∈S)|s≦k.

Texts are mainly related by explanatoriness, so top ranked sentences canshare same or similar information. In one example, when text is selectedwe find non-redundant texts. One method of selecting non-redundant textsis to select one text first, then iteratively select the next sentenceby checking if the information on the next candidate text is alreadyincluded in the already selected texts.

An example of an output explanatory summary 260 is described. Say, forexample the end user is interested in getting a summary of the negativeinformation about Company XYZ's audio player (ProductABC) case. In thiscase, one topic label might be (CompanyXYZ, ProductABC, Case, Negative).Output comments in the summary might be: i) The case is strong andstylish, but unfortunately lacks a window (now a big deal). ii) The caseis too small—it took me like a half hour just to get this monstrosity tofit in its cage. In this case, the extracted sentences provided in theoutput explanatory summary reach our goal—they show detailed reasons ofnegative opinion about the topic, ‘lack of a window’ and ‘too small’.

FIG. 6 shows a system 600 for generating explanatory summaries fromopinionated data according to an example of the invention. Input 110 inthe formats described (topic label, list of texts) is input into thesystem 600. Features from the text or lines of text from the list oftexts are extracted by the Extraction Component 606. In one example, thesystem includes a Known Information Component 610 which is used toextract information already known so that it is not ranked or furtherprocessed.

The system further includes a Evaluation Component 620. In one example,the Evaluation Component includes a Popularity Component 622 that isused to rank the input text by popularity according to the method 232shown in FIG. 3. In the example shown in FIG. 6, the EvaluationComponent further includes a Discourse Analysis Component 150. TheDiscourse Analysis Component 150 parses and analyzes the syntaxstructure and lexical clues of the sentence and from this analysisassigns a label used in determining the ranking of the input text. TheDiscriminativeness Component 625 is used to evaluate thediscriminativeness of the text according to the methods 240, 244 and themethod shown in FIG. 5. The Discriminativeness Component includes aBackground Data Component 626 and a Comparable Data Component 628. Boththe Background Data Component 626 and Comparable Data Component 628evaluate features of the text.

The output from the Evaluation Component is used by the RankingComponent 630 to establish the ranking of the text or features. In oneexample, the ranking is based on the score output by the EvaluationComponent 620. The rankings from the Popularity Component 622, DiscourseAnalysis Component 150, and the Discriminativeness Component 625 aremerged in the Merging Component 636. Based on the rankings after themerger, the acceptable summary length, whether there are redundancies inthe text, etc., the Summary Determination Component determines whichtext is output 650.

FIG. 7 shows a computer system for implementing the method shown in FIG.2 described in accordance with examples of the present invention.

The computing apparatus 700 includes one or more processor(s) 702 thatmay implement or execute some or all of the steps described in themethod 200. Commands and data from the processor 702 are communicatedover a communication bus 704. The computing apparatus 700 also includesa main memory 706, such as a random access memory (RAM), where theprogram code for the processor 702, may be executed during runtime, anda secondary memory 708. The secondary memory 708 includes, for example,one or more hard drives 710 and/or a removable storage drive 712,representing a removable flash memory card, etc., where a copy of theprogram code for the method 200 may be stored. The removable storagedrive 712 reads from and/or writes to a removable storage unit 714 in awell-known manner.

These methods, functions and other steps described may be embodied asmachine readable instructions stored on one or more computer readablemediums, which may be non-transitory. Exemplary non-transitory computerreadable storage devices that may be used to implement the presentinvention include but are not limited to conventional computer systemRAM, ROM, EPROM, EEPROM and magnetic or optical disks or tapes. Concreteexamples of the foregoing include distribution of the programs on a CDROM or via Internet download. In a sense, the Internet itself is acomputer readable medium. The same is true of computer networks ingeneral. It is therefore to be understood that any interfacing deviceand/or system capable of executing the functions of the above-describedexamples are encompassed by the present invention.

Although shown stored on main memory 706, any of the memory componentsdescribed 706, 708, 714 may also store an operating system 730, such asMac OS, MS Windows, Unix, or Linux; network applications 732; and adisplay controller component 730. The operating system 730 may bemulti-participant, multiprocessing, multitasking, multithreading,real-time and the like. The operating system 730 may also perform basictasks such as recognizing input from input devices, such as a keyboardor a keypad; sending output to the display 720; controlling peripheraldevices, such as disk drives, printers, image capture device; andmanaging traffic on the one or more buses 704. The network applications732 includes various components for establishing and maintaining networkconnections, such as software for implementing communication protocolsincluding TCP/IP, HTTP, Ethernet, USB, and FireWire.

The computing apparatus 700 may also include an input devices 716, suchas a keyboard, a keypad, functional keys, etc., a pointing device, suchas a tracking ball, cursors, mouse 718, etc., and a display(s) 720. Adisplay adaptor 722 may interface with the communication bus 704 and thedisplay 720 and may receive display data from the processor 702 andconvert the display data into display commands for the display 720.

The processor(s) 702 may communicate over a network, for instance, acellular network, the Internet, LAN, etc., through one or more networkinterfaces 724 such as a Local Area Network LAN, a wireless 402.11x LAN,a 3G mobile WAN or a WiMax WAN. In addition, an interface 726 may beused to receive an image or sequence of images from imaging components728, such as the image capture device.

The foregoing description, for purposes of explanation, used specificnomenclature to provide a thorough understanding of the invention.However, it will be apparent to one skilled in the art that the specificdetails are not required in order to practice the invention. Theforegoing descriptions of specific embodiments of the present inventionare presented for purposes of illustration and description. They are notintended to be exhaustive of or to limit the invention to the preciseforms disclosed. Obviously, many modifications and variations arepossible in view of the above teachings. The embodiments are shown anddescribed in order to best explain the principles of the invention andits practical applications, to thereby enable others skilled in the artto best utilize the invention and various embodiments with variousmodifications as are suited to the particular use contemplated. It isintended that the scope of the invention be defined by the followingclaims and their equivalents:

What is claimed is:
 1. A method for generating explanatory summaries,comprising the steps of: extracting features from text of text listsfrom summaries; evaluating explanatoriness of text, wherein evaluatingthe explanatoriness of text includes evaluating the features of thetext, including at least the step of evaluating the discriminativenessof the features of the text by comparing the text to a first text dataset, wherein the first text data set is derived from a topic label; andranking the text based on the explanatoriness evaluation.
 2. The methodrecited in claim 1 further including the step of merging the rankingbased on the explanatoriness evaluations.
 3. The method recited in claim1 further including the step of outputting an explanatory summary,wherein what text is included in the summary is based on at least theranking of the input text.
 4. The method recited in claim 1 wherein thefirst text data set is a set of comparable data.
 5. The method recitedin claim 1 wherein the first text data set is a set of background data.6. The method recited in claim 1 wherein the evaluation step furtherincludes the step of evaluating the popularity of each feature.
 7. Themethod recited in claim 1 wherein the evaluation step further includesthe step of evaluating the text by performing discourse analysis.
 8. Themethod recited in claim 4 wherein the step of evaluating thediscriminativeness of the features from the background data includes thestep of for each feature, determining whether the feature is morefrequent in the current input text than the background data set.
 9. Themethod recited in claim 5 wherein the step of evaluating thediscriminativeness of the features from the comparable data include sthe step of for each feature, determining whether the feature is morefrequent in the current input text than the data set.
 10. A system forgenerating explanatory summaries, comprising: an Extraction Componentfor extracting features from text of text lists from summaries; anEvaluation Component for evaluating the explanatoriness of text, whereinevaluating the explanatoriness of text includes evaluating the featuresof the text, including at least the step of evaluating thediscriminativeness of the features of the text by comparing the text toa first text data set, wherein the first text data set is derived from atopic label; and a Ranking Component for ranking the text based on theexplanatoriness evaluation.
 11. The system recited in claim 10 furtherincluding a Known Information Component for extracting informationalready known so that already known information is not furtherprocessed.
 12. The system recited in claim 10 wherein the EvaluationComponent further includes at least one of the following: a PopularityComponent, a Discourse Analysis Component.
 13. The system recited inclaim 10 further including a Merging Component for merging all of therankings output from the Evaluation Component.
 14. The system recited inclaim 10 further including a Summary Determination Component whereinbased on the rankings of the text, a determination is made as to whichtext is output.
 15. A non-transitory computer readable storage mediumhaving computer readable program instructions stored thereon for causinga computer system to perform instructions, the instructions comprisingthe steps of: extracting features from text of text lists fromsummaries; evaluating explanatoriness of text, wherein evaluating theexplanatoriness of text includes evaluating the features of the text,including at least the step of evaluating the popularity of the featuresand evaluating the discriminativeness of the features of the text bycomparing the text to a first text data set, wherein the first text dataset is derived from a topic label; and ranking the text based on theexplanatoriness evaluation.
 16. The computer readable storage mediumrecited in claim 16 further including the step of merging the rankingbased on the explantoriness evaluations.
 17. The computer readablestorage medium recited in claim 16 further including the step ofoutputting an explanatory summary, wherein what text is included in thesummary is based on at least the ranking of the input text.
 18. Thecomputer readable storage medium recited in claim 16 wherein the firsttext data set is a set of comparable data.
 19. The computer readablestorage medium recited in claim 16 wherein the first text data set is aset of background data.